MojoPivots Breakout Signals [DonnieMojo]The MojoPivots Breakout Indicator is a precision-engineered tool designed for traders seeking high-probability breakout opportunities using dynamic pivot structures and real-time volume imbalances.
Built on DonnieMojo’s breakout framework, this indicator analyzes market structure via custom MR (Major Resistance) and MS (Major Support) levels, dynamically derived from intraday volume profiles and statistical price expansion. It intelligently tracks and visualizes potential breakout zones, key "line-in-the-sand" levels, and take-profit targets (TP1, TP2, TP3) based on volatility-adjusted zones.
🔑 Core Features:
Breakout Signal Detection
Identifies potential bullish and bearish breakouts when price breaches predefined resistance (MR1) or support (MS1) levels with confirmation from volume dynamics.
Smart Take-Profit System
Targets are automatically mapped to MR2–MR4 and MS2–MS4, offering structured TP zones based on standard deviation thresholds.
Delta Zone Visuals
Color-coded fills display real-time buyer/seller dominance in each zone using an imbalance-weighted volume model.
VPOC "Sand Line"
The Volume Point of Control is plotted to show the session's key battle line for trend continuation or rejection.
Statistical Performance Panel
Live breakout stats with hit-rate bars (TP1/TP2/TP3) help you evaluate performance and adjust trade management.
🧪 Usage Tips:
Timeframe Sync: The default detection logic is based on 15-minute candles, but pivot zones are calculated from higher timeframes (2H by default). Adjust these in the settings to suit your strategy.
Entry Trigger: Wait for price to close below MS1 or above MR1 and breach it on the next bar to confirm a breakout signal.
TP Scaling: Use TP1 for conservative exits or scale out progressively at TP2 and TP3 for extended moves.
Volume Confirmation: Delta zone fills (green/red) help validate whether breakout levels are supported by buyer/seller strength — fade low-delta signals with caution.
Combine with Trend Filters: Enhance results by using MojoPivots alongside trend indicators like EMAs, ADX, or macro S/R.
Cari dalam skrip untuk "volume profile"
Dynamic VWAP: Fair Value & Divergence SuiteDynamic VWAP: Fair Value & Divergence Suite
Dynamic VWAP: Fair Value & Divergence Suite is a comprehensive tool for tracking contextual valuation, overextension, and potential reversal signals in trending markets. Unlike traditional VWAP that anchors to the start of a session or a fixed period, this indicator dynamically resets the VWAP anchor to the most recent swing low. This design allows you to monitor how far price has extended from the most recent significant low, helping identify zones of potential profit-taking or reversion.
Deviation bands (standard deviations above the anchored VWAP) provide a clear visual framework to assess whether price is in a fair value zone (±1σ), moderately extended (+2σ), or in zones of extreme extension (+3σ to +5σ). The indicator also highlights contextual divergence signals, including slope deceleration, weak-volume retests, and deviation failures—giving you actionable confluence around potential reversal points.
Because the anchor updates dynamically, this tool is particularly well suited for trend-following assets like BTC or stocks in sustained moves, where price rarely returns to deep negative deviation zones. For this reason, the indicator focuses on upside extension rather than symmetrical reversion to a long-term mean.
🎯 Key Features
✅ Dynamic Swing Low Anchoring
Continuously re-anchors VWAP to the most recent swing low based on your chosen lookback period.
Provides context for trend progression and overextension relative to structural lows.
✅ Standard Deviation Bands
Plots up to +5σ deviation bands to visualize levels of overextension.
Extended bands (+3σ to +5σ) can be toggled for simplicity.
✅ Conditional Zone Fills
Colored background fills show when price is inside each valuation zone.
Helps you immediately see if price is in fair value, moderately extended, or highly stretched territory.
✅ Divergence Detection
VWAP Slope Divergence: Flags when price makes a higher high but VWAP slope decelerates.
Low Volume Retest: Highlights weak re-tests of VWAP on low volume.
Deviation Failure: Identifies when price reverts back inside +1σ after closing beyond +3σ.
✅ Volume Fallback
If volume is unavailable, uses high-low range as a proxy.
✅ Highly Customizable
Adjust lookbacks, show/hide extended bands, toggle fills, and enable or disable divergences.
🛠️ How to Use
Identify Buy and Sell Zones
Price in the fair value band (±1σ) suggests equilibrium.
Reaching +2σ to +3σ signals increasing overextension and potential areas to take profits.
+4σ to +5σ zones can be used to watch for exhaustion or mean-reversion setups.
Monitor Divergence Signals
Use slope divergence and deviation failures to look for confluence with overextension.
Low volume retests can flag rallies lacking conviction.
Adapt Swing Lookback
30–50 bars: Faster re-anchoring for swing trading.
75–100 bars: More stable anchors for longer-term trends.
🧭 Best Practices
Combine the anchored VWAP with higher timeframe structure.
Confirm signals with other tools (momentum, volume profiles, or trend filters).
Use extended deviation zones as context, not as standalone signals.
⚠️ Disclaimer
This script is for educational and informational purposes only. It does not constitute financial advice or a recommendation to buy or sell any security or asset. Always do your own research and consult a qualified financial professional before making any trading decisions. Past performance does not guarantee future results.
Senn System A"Senn System A" is a robust, all-in-one indicator engineered to enhance your market analysis by intelligently combining the power of Volume Weighted Average Price (VWAP) for range-bound conditions and Exponential Moving Average (EMA) Ribbons for trending environments. This script aims to provide traders with a clear, dynamic visual representation of market structure and momentum across multiple timeframes. A core feature allows you to select and display two distinct VWAP instances simultaneously, each anchoring to your choice of Daily, Weekly, Monthly, Quarterly, or Yearly periods. These VWAPs include clean, filled bands highlighting the area between Standard Deviation 1 and Standard Deviation 2, providing immediate visual cues for key price zones. Furthermore, a unique "Previous VWAP" feature, complete with its own selectable bands and fills, offers valuable historical context for understanding past price action relative to significant volume profiles.
Complementing the VWAP functionality, the indicator integrates an advanced EMA ribbon system, building upon the principles of effective trend visualization. You can customize the lengths of the primary EMA ribbon (defaulting to 25, 36, 50 periods) to suit your analysis of short to medium-term trends. Additionally, dedicated toggles enable the display of higher-timeframe trend ribbons, using EMAs of 100/200 for daily trend and 600/1200 for weekly trend. These ribbons are color-coded based on EMA crossovers, providing intuitive visual signals of trend direction and strength. The "Senn System A" is designed to be highly configurable, allowing traders to tailor the indicator's appearance and active components to their specific trading strategies and market conditions.
Exponential Action Map (EAM)### **Exponential Action Map (EAM) – Description and Differences from VPVR**
The Exponential Action Map (EAM) indicator is a Pine Script-based volume profile indicator that offers **a weighted representation of buying and selling activity**. Unlike the standard **Volume Profile Visible Range (VPVR)**, which simply shows traded volume at various price levels, the EAM provides the following additional features:
1. **Exponential Weighting**:
- Instead of treating the volume of all considered bars equally, the EAM uses a **decay factor** to gradually diminish the significance of older data. This allows **more recent price movements to have greater influence**, making it particularly useful for short-term analysis.
2. **Exponential Stealth Move (ESM)**:
- In addition to buy and sell volume, the EAM calculates and displays the **Exponential Stealth Move (ESM)**.
- This measures the relative price movement compared to volume and highlights areas where **significant price changes occur with low volume**, which may indicate institutional activity or strong momentum.
- The ESM visualization is not present in VPVR, making it a distinct and valuable feature.
3. **Visualization Methodology**:
- Instead of simple histograms like in VPVR, volume is represented by **dynamic boxes** that encompass Buy (EBA), Sell (ESA), and Stealth Move (ESM) activities.
- The size and color of these boxes are **customizable**, allowing for clear differentiation between various volume types.
4. **Flexibility & Configuration**:
- Users can adjust parameters such as **Number of Bars, Decay Factor, Bar Width, and Maximum History Data**.
- The ability to **toggle historical data visibility** offers a **tailored view** that VPVR does not provide.
**Conclusion:** The EAM extends the classic volume profile (VPVR) by introducing **time-weighted volume analysis and detection of Stealth Moves (ESM)**. This not only highlights price levels with high trading volume but also reveals **price movements with low liquidity**, which can potentially indicate institutional interest.
Simplified Market ProfileVolume Bins: This script divides the price range into num_bins equal price levels. Each bin holds the cumulative volume for that price range.
Profile Length: The number of past bars that the profile considers for building the volume histogram.
Bin Size: The price range between bins is determined by dividing the difference between the highest and lowest prices over the specified range.
Volume Calculation: The script iterates over each bar within the specified range, determining which price bin the bar’s volume should be added to.
Plotting: The script visualizes the volume profile as lines plotted horizontally at different price levels, with thickness proportional to the volume traded at that level.
Bitcoin Stalemate IndicatorThe Bitcoin Stalemate Indicator examines periods in the market defined by a combination of high volume and low price volatility. These periods are a bit like a tug-of-war with both sides applying a lot of force but the rope moving very little. Periods of high volume and low volatility suggest both sides of the trade are stuck in a stalemate. This indicator may be useful in identifying psychologically important price levels.
The mechanics of the indicator are fairly simple: the indicator takes the volume and divides it by the candle’s size over it’s close for that same period.
volume / ((high - low) / close)
Candles that move very little but with high volume will produce higher reads and vice versa. Finally a smoothing average is applied to clean up the noise.
Volume profiles from the top 6 exchanges are averaged in order to avoid a single exchange’s popularity acting as an overriding factor. Single exchanges can be isolated but are of lesser use. Heat map functionality is only active when all exchanges are selected.
.srb suiteThe essential suite Indicator.
that are well integrated to ensure visibility of essential items for trading.
it is very cumbersome to put symbol in the Tradingview chart and combine essential individual indicators one by one.
Moreover even with such a combination, the chart is messy and visibility is not good.
This is because each indicator is not designed with the others in mind.
This suite was developed as a composite-solution to that situation, and will make you happy.
designed to work in the same pane with open-source indicator by default.
Recommended visual order ; Back = .srb suite, Front = .srb suite vol & info
individually turn on/off only what you need on the screen.
BTC-agg. Volume
4 BTC-spot & 4 BTC-PERP volume aggregated.
It might helps you don't miss out on important volume flows.
Weighted to spot trading volume when using PERP+spot volume .
If enabled, BTC-agg.Vol automatically applied when selecting BTC-pair.
--> This is used in calculations involving volumes, such as VWAP.
Moving Average
1 x JMA trend ribbon ; Accurately follow short-term trend changes.
3 x EMA ribbon ; zone , not the line.
MA extension line ; It provide high visibility to recognize the direction of the MA.
SPECIAL TOOLS
VWAP with Standard Deviation Bands
VWAP ruler
BB regular (Dev. 2.0, 2.5)
BB Extented (Dev. 2.5, 3.0, 3.5)
Fixed Range Volume Profile ; steamlined one, performace tuned & update.
SPECIAL TOOLS - Auto Fibonacci Retracement - New GUI
'built-in auto FBR ' has been re-born
It shows - retracement Max top/ min bottom ; for higher visibility
It shows - current retracement position ; for higher visibility
The display of the Fib position that exceeds the regular range is auto-determined according to the price.
tradingview | chart setting > Appearance > Top margin 0%, Bottom margin 0% for optimized screen usage
tradingview | chart setting > Appearance > Right margin 57
.srb suite vol & info --> Visual Order > Bring to Front
.srb suite vol & info --> Pin to scale > No scale (Full-screen)
Visual order ; Back = .srb suite, Front = .srb suite vol & info
1. Fib.Retracement core is from tradingview built-in FBR ---> upgrade new-type GUI, and performance tuned.
2. Fixed-range volume-profile core is from the open-source one ---> some update & perf.tuned.
---------------------------------------------------------------------------------------------------------------------------------------
if you have any questions freely contact to me by message on tradingview.
but please understand that responses may be quite late.
Special thanks to all of contributors of community.
The script may be freely distributed under the MIT license.
Market Profile Fixed ViewSome instruments does not provide any volume information, therefore, as a fixed volume profile user, I needed a fixed market profile indicator to use the same principles, regardless of whether the volumes are available or not.
This script draws a market profile histogram corresponding to price variations within a specific duration, you only need to specify Start and End date/time values to see the histogram on your chart.
Details
Two lines corresponding to highest/lowest prices are displayed around the histogram
The redline corresponds to the POC (point of control)
Options
Start calculation
End calculation
Bars number (histogram resolution, currently locked to a max value of 50 bars)
Display side/Width (allows to modify size of bars, to the left or to the right)
Bars/Borders/POC Color customization
Notes
This script will probably be updated (to add VAH/VAL zones, and maybe other options). However, some common market profile attributes have not been implemented yet since I don't really use them)
TIL Volume by Price SRTrading Indicator Lab's Volume by Price SR is a volume-based indicator for TradingView that reveals the strongest (and weakest) support and resistance levels in the chart among 12 price zones within a given period.
How It Works
The Volume by Price indicator uses a spectrum of blue to red colors to differentiate the strength of the volume within a price range for each bar. Think of it as a running volume profile with 12 price zones.
For each bar, the indicator calculates the rank of each price zone from the one that has the least number of volume to the highest within a given length of bars. Price zones that have less volume count are assigned colors that are closer to blue while price zones that have higher volume appear red. The indicator also marks the highest and lowest price levels in the rank with a red and blue dot which correspond to the same color code. The indicator repeats this in the next bar up to the last until it creates a stream of 12 lines that visually represent the gradual shift of volume strength in the price axis.
How to Use
The Volume by Price SR indicator is simple and can be used primarily to gauge support and resistance. Red lines represent price levels where there is a history of higher volume within the period, which also act as good support/resistance levels where price is more likely to be tested or bounce off.
As it can also be seen as a running volume profile indicator, the red and blue dots in each bar can be considered as high volume nodes (HVN) and low volume nodes (LVN) respectively. Though the calculation of the volume profile is continuous, the HVN and LVN dots can often appear consecutively or in a series within a single price level. The price tends to linger around or test lines that has the red dot (HVN). Meanwhile price rarely cross lines with the blue dot (LVN) or not spend as much time in these areas compared to other levels.
The height of the 12 price zones is determined by the difference between the highest high and lowest low of the period which can be useful in visualizing the chart's dynamic price range.
Inputs
- Length - sets the length of the period the indicator calculates for each bar
- Line Thickness - sets the thickness of the 12 lines all at once
- Dot Size - sets the size of the HVN and LVN dots
Multi Time Frame Trend, Volume and Momentum ProfileWHAT DOES THIS INDICATOR DO?
I created this indicator to address some of the significant inconveniences when analyzing a security, such as continually switching between different time frames to determine the trend and potential pullbacks, adding volume or volume-derived indicators, and finally, something that would help me determine the strength of the trend (maybe two additional indicators here). So I decided to code this all-in-one indicator that you can add multiple times to your chart depending on the settings you want to use, or just optimize the parameters for the particular asset and then switch between the options.
As the name suggests, it consists of three main sections - Trend , Volume , and Momentum . You have complete control over the parameters, including the Time Frames you want to use for each one (they can be different). So, let me explain each section in more detail.
HOW DOES THE INDICATOR WORK?
1. Trend Settings
In order to determine the trend, you need to set up two Moving Averages. You have a wide choice here - SMA, EMA, WMA, RMA, HMA, DEMA, TEMA, VWMA, and ALMA. Since the indicator does not plot the moving averages on the chart, I strongly suggest using this indicator along with the free "Trend Indicator for Directional Trading(main)" , which you can find in the Public Library. Once you set up the Trend Resolution, the Types of MAs, and their lengths, the indicator will generate a histogram of their convergences and divergences.
The change in colors should help you more easily determine the trend:
a) Bright Green - bull trend and price trending up (a good place to open long)
b) Dark Green - bull trend and price trending down (stay flat or open a long position with great caution)
c) Bright Red - bear trend and price trending down (a good place to open short)
d) Dark Red - bear trend and price trending up (stay flat or open a short position with great caution)
e) In addition, you can change the color palette to reflect the bull/bear trend momentum by scrolling to the bottom and selecting "Color Based on Bull/Bear Momentum", but I will discuss this in more detail below.
This part of the indicator is useful for opening a trade in the direction of the trend or for spotting a potential divergence. Both cases are illustrated below.
2. Volume Settings
The calculations for this part of the indicator are partially taken from "Multi Time Frame Effective Volume Profile" . I will quickly outline the specifics here, but if you want a more thorough understanding of how it works, please check the description of the MTF Effective Volume Profile indicator .
You have three elements with the following default settings - Resolution (5-min), Lookback (100), and Average (1). This means that the indicator will analyze the last one hundred 5-min bars and will plot a sum of only those that are at least 1 times bigger than the average. Those that are smaller than the average will be left out from the calculation. What you get is a trend line showing you accumulation/distribution based on modified volume parameters.
This part of the indicator is useful for spotting exhaustions and increased buying/selling volume that is opposite to the price trend. As you will see in the picture below, in frame 1 the selling pressure is decreasing, while buying volume is increasing. At one point supply dries out and the bulls take control, thus reverting the price. In frame 2, however, you can see that the higher high is not met with nearly as much buying volume as in the previous peak, showing that the bulls are exhausted and maybe a trend change will follow or at the very least that the bull trend will take a break.
3. Momentum Settings
The final part is an RSI smoothed through a Moving Average with the addition of some minor optimizations. Thus, the parameters you have to configure here aside from the resolution are the RSI length, the moving average that will be used, and its length. Out of the three, this is the most lagging component, but it's also the most accurate one. I must mention that due to the modified nature of this RSI, overbought and oversold levels carry less weight to the trading signals. Rather, pay attention to the change of colors, as they do so when the RSI changes direction based on preset parameters. The picture below shows such instances.
4. Additional Settings
This section consists of 4 elements:
a) Length of Trend - filters out the noise and gives a signal only when the trend becomes more established
b) ADX Threshold - filters out trading ranges and indecision zones when it's not recommended to open a trade
c) Select Analysis - choose what part of the indicator you want to see from a drop-down menu
d) Color Based on Bull/Bear Momentum - a global setting that will override the preset coloring of each indicator and will replace it with colors based on bull/bear strength and momentum - green for bulls, red for bears, and gray for non-trading zones.
The last part of this indicator is a combination of all of the above and is called a Points-Based System . It generates 3 rows of dots that go light green when bull criteria are met, orange when bear criteria are met, or gray when it's neither of the two. When you get a column of 3 green dots you get a buy signal. Similarly, a column of 3 orange dots gives you a sell signal. Grey zones are non-tradeable. It goes without saying that the frequency and quality of the signals you get will almost entirely depend on your settings, so feel free to experiment and adjust the indicator to catch the best moves for the given security.
In terms of indicator adjustments, I have left almost every part open to configuration. That is 15 parameters and 35 adjustable colors.
HOW MUCH DOES THE INDICATOR COST ?
As much as I would like to offer it for free (as some of my other ones), a great deal of work, trading logic, and testing have gone into creating this indicator. More than a few hundred iterations and a few dozen branches were required to reach the end result which is a precise combination of usefulness, simplicity, and practicality. Furthermore, this indicator will continue to be updated and user-requested features that improve its performance will be added.
Disclaimer: The purpose of all indicators is to indicate potential setups, which may lead to profitable results. No indicator is perfect and certainly, no indicator has a 100% success rate. They are subject to flaws, wrongful interpretation, bugs, etc. This indicator makes no exception. It must be used with a sound money management plan that puts the main emphasis on protecting your capital. Please, do not rely solely on any single indicator to make trading decisions instead of you. Indicators are storytellers, not fortune tellers. They help you see the bigger picture, not the future.
To find out more about how to gain access to this indicator, please use the provided information below or just message me. Thank you for your time.
Bar Balance [LucF]Bar Balance extracts the number of up, down and neutral intrabars contained in each chart bar, revealing information on the strength of price movement. It can display stacked columns representing raw up/down/neutral intrabar counts, or an up/down balance line which can be calculated and visualized in many different ways.
WARNING: This is an analysis tool that works on historical bars only. It does not show any realtime information, and thus cannot be used to issue alerts or for automated trading. When realtime bars elapse, the indicator will require a browser refresh, a change to its Inputs or to the chart's timeframe/symbol to recalculate and display information on those elapsed bars. Once a trader understands this, the indicator can be used advantageously to make discretionary trading decisions.
Traders used to work with my Delta Volume Columns Pro will feel right at home in this indicator's Inputs . It has lots of options, allowing it to be used in many different ways. If you value the bar balance information this indicator mines, I hope you will find the time required to master the use of Bar Balance well worth the investment.
█ OVERVIEW
The indicator has two modes: Columns and Line .
Columns
• In Columns mode you can display stacked Up/Down/Neutral columns.
• The "Up" section represents the count of intrabars where `close > open`, "Down" where `close < open` and "Neutral" where `close = open`.
• The Up section always appears above the centerline, the Down section below. The Neutral section overlaps the centerline, split halfway above and below it.
The Up and Down sections start where the Neutral section ends, when there is one.
• The Up and Down sections can be colored independently using 7 different methods.
• The signal line plotted in Line mode can also be displayed in Columns mode.
Line
• Displays a single balance line using a zero centerline.
• A variable number of independent methods can be used to calculate the line (6), determine its color (5), and color the fill (5).
You can thus evaluate the state of 3 different components with this single line.
• A "Divergence Levels" feature will use the line to automatically draw expanding levels on divergence events.
Features available in both modes
• The color of all components can be selected from 15 base colors, with 16 gradient levels used for each base color in the indicator's gradients.
• A zero line can show a 6-state aggregate value of the three main volume balance modes.
• The background can be colored using any of 5 different methods.
• Chart bars can be colored using 5 different methods.
• Divergence and large neutral count ratio events can be shown in either Columns or Line mode, calculated in one of 4 different methods.
• Markers on 6 different conditions can be displayed.
█ CONCEPTS
Intrabar inspection
Intrabar inspection means the indicator looks at lower timeframe bars ( intrabars ) making up a given chart bar to gather its information. If your chart is on a 1-hour timeframe and the intrabar resolution determined by the indicator is 5 minutes, then 12 intrabars will be analyzed for each chart bar and the count of up/down/neutral intrabars among those will be tallied.
Bar Balances and calculation methods
The indicator uses a variety of methods to evaluate bar balance and to derive other calculations from them:
1. Balance on Bar : Uses the relative importance of instant Up and Down counts on the bar.
2. Balance Averages : Uses the difference between the EMAs of Up and Down counts.
3. Balance Momentum : Starts by calculating, separately for both Up and Down counts, the difference between the same EMAs used in Balance Averages and an SMA of double the period used for the EMAs. These differences are then aggregated and finally, a bounded momentum of that aggregate is calculated using RSI.
4. Markers Bias : It sums the bull/bear occurrences of the four previous markers over a user-defined period (the default is 14).
5. Combined Balances : This is the aggregate of the instant bull/bear bias of the three main bar balances.
6. Dual Up/Down Averages : This is a display mode showing the EMA calculated for each of the Up and Down counts.
Interpretation of neutral intrabars
What do neutral intrabars mean? When price does not change during a bar, it can be because there is simply no interest in the market, or because of a perfect balance between buyers and sellers. The latter being more improbable, Bar Balance assumes that neutral bars reveal a lack of interest, which entails uncertainty. That is the reason why the option is provided to interpret ratios of neutral intrabars greater than 50% as divergences. It is also the rationale behind the option to dampen signal lines on the inverse ratio of neutral intrabars, so that zero intrabars do not affect the signal, and progressively larger proportions of neutral intrabars will reduce the signal's amplitude, as the balance calcs using the up/down counts lose significance. The impact of the dampening will vary with markets. Weaker markets such as cryptos will often contain greater numbers of neutral intrabars, so dampening the Line in that sector will have a greater impact than in more liquid markets.
█ FEATURES
1 — Columns
• While the size of the Up/Down columns always represents their respective importance on the bar, their coloring mode is independent. The default setup uses a standard coloring mode where the Up/Down columns over/under the zero line are always in the bull/bear color with a higher intensity for the winning side. Six other coloring modes allow you to pack more information in the columns. When choosing to color the top columns using a bull/bear gradient on Balance Averages, for example, you will end up with bull/bear colored tops. In order for the color of the bottom columns to continue to show the instant bar balance, you can then choose the "Up/Down Ratio on Bar — Dual Solid Colors" coloring mode to make those bars the color of the winning side for that bar.
• Line mode shows only the line, but Columns mode allows displaying the line along with it. If the scale of the line is different than that of the scale of the columns, the line will often appear flat. Traders may find even a flat line useful as its bull/bear colors will be easily distinguishable.
2 — Line
• The default setup for Line mode uses a calculation on "Balance Momentum", with a fill on the longer-term "Balance Averages" and a line color based on the "Markers Bias". With the background set on "Line vs Divergence Levels" and the zero line on the hard-coded "Combined Bar Balances", you have access to five distinct sources of information at a glance, to which you can add divergences, divergences levels and chart bar coloring. This provides powerful potential in displaying bar balance information.
• When no columns are displayed, Line mode can show the full scale of whichever line you choose to calculate because the columns' scale no longer interferes with the line's scale.
• Note that when "Balance on Bar" is selected, the Neutral count is also displayed as a ratio of the balance line. This is the only instance where the Neutral count is displayed in Line mode.
• The "Dual Up/Down Averages" is an exception as it displays two lines: one average for the Up counts and another for the Down counts. This mode will be most useful when Columns are also displayed, as it provides a reference for the top and bottom columns.
3 — Zero Line
The zero line can be colored using two methods, both based on the Combined Balances, i.e., the aggregate of the instant bull/bear bias of the three main bar balances.
• In "Six-state Dual Color Gradient" mode, a dot appears on every bar. Its color reflects the bull/bear state of the Combined Balances, and the dot's brightness reflects the tally of balance biases.
• In "Dual Solid Colors (All Bull/All Bear Only)" a dot only appears when all three balances are either bullish or bearish. The resulting pattern is identical to that of Marker 1.
4 — Divergences
• Divergences are displayed as a small circle at the top of the scale. Four different types of divergence events can be detected. Divergences occur whenever the bull/bear bias of the method used diverges with the bar's price direction.
• An option allows you to include in divergence events instances where the count of neutral intrabars exceeds 50% of the total intrabar count.
• The divergence levels are dynamic levels that automatically build from the line's values on divergence events. On consecutive divergences, the levels will expand, creating a channel. This implementation of the divergence levels corresponds to my view that divergences indicate anomalies, hesitations, points of uncertainty if you will. It excludes any association of a pre-determined bullish/bearish bias to divergences. Accordingly, the levels merely take note of divergence events and mark those points in time with levels. Traders then have a reference point from which they can evaluate further movement. The bull/bear/neutral colors used to plot the levels are also congruent with this view in that they are determined by price's position relative to the levels, which is how I think divergences can be put to the most effective use.
5 — Background
• The background can show a bull/bear gradient on four different calculations. You can adjust its brightness to make its visual importance proportional to how you use it in your analysis.
6 — Chart bars
• Chart bars can be colored using five different methods.
• You have the option of emptying the body of bars where volume does not increase, as does my TLD indicator, the idea behind this being that movement on bars where volume does not increase is less relevant.
7 — Intrabar Resolution
You can choose between three modes. Two of them are automatic and one is manual:
a) Fast, Longer history, Auto-Steps (~12 intrabars) : Optimized for speed and deeper history. Uses an average minimum of 12 intrabars.
b) More Precise, Shorter History Auto-Steps (~24 intrabars) : Uses finer intrabar resolution. It is slower and provides less history. Uses an average minimum of 24 intrabars.
c) Fixed : Uses the fixed resolution of your choice.
Auto-Steps calculations vary for 24/7 and conventional markets in order to achieve the proper target of minimum intrabars.
You can choose to view the intrabar resolution currently used to calculate delta volume. It is the default.
The proper selection of the intrabar resolution is important. It must achieve maximal granularity to produce precise results while not unduly slowing down calculations, or worse, causing runtime errors.
8 — Markers
Six markers are available:
1. Combined Balances Agreement : All three Bar Balances are either bullish or bearish.
2. Up or Down % Agrees With Bar : An up marker will appear when the percentage of up intrabars in an up chart bar is greater than the specified percentage. Conditions mirror to down bars.
3. Divergence confirmations By Price : One of the four types of balance calculations can be used to detect divergences with price. Confirmations occur when the bar following the divergence confirms the balance bias. Note that the divergence events used here do not include neutral intrabar events.
4. Balance Transitions : Bull/bear transitions of the selected balance.
5. Markers Bias Transitions : Bull/bear transitions of the Markers Bias.
6. Divergence Confirmations By Line : Marks points where the line first breaches a divergence level.
Markers appear when the condition is detected, without delay. Since nothing is plotted in realtime, markers do not appear on the realtime bar.
9 — Settings
• Two modes can be selected to dampen the line on the ratio of neutral intrabars.
• A distinct weight can be attributed to the count of the latter half of intrabars, on the assumption that later intrabars may be more important in determining the outcome of chart bars.
• Allows control over the periods of the different moving averages used in calculations.
• The default periods used for the various calculations define the following hierarchy from slow to fast:
Balance Averages: 50,
Balance Momentum: 20,
Dual Up/Down Averages: 20,
Marker Bias: 10.
█ LIMITATIONS
• This script uses a special characteristic of the `security()` function allowing the inspection of intrabars—which is not officially supported by TradingView.
• The method used does not work on the realtime bar—only on historical bars.
• The indicator only works on some chart resolutions: 3, 5, 10, 15 and 30 minutes, 1, 2, 4, 6, and 12 hours, 1 day, 1 week and 1 month. The script’s code can be modified to run on other resolutions, but chart resolutions must be divisible by the lower resolution used for intrabars and the stepping mechanism could require adaptation.
• When using the "Line vs Divergence Levels — Dual Color Gradient" color mode to fill the line, background or chart bars, keep in mind that a line calculation mode must be defined for it to work, as it determines gradients on the movement of the line relative to divergence levels. If the line is hidden, it will not work.
• When the difference between the chart’s resolution and the intrabar resolution is too great, runtime errors will occur. The Auto-Steps selection mechanisms should avoid this.
• Alerts do not work reliably when `security()` is used at intrabar resolutions. Accordingly, no alerts are configured in the indicator.
• The color model used in the indicator provides for fancy visuals that come at a price; when you change values in Inputs , it can take 20 seconds for the changes to materialize. Luckily, once your color setup is complete, the color model does not have a large performance impact, as in normal operation the `security()` calls will become the most important factor in determining response time. Also, once in a while a runtime error will occur when you change inputs. Just making another change will usually bring the indicator back up.
█ RAMBLINGS
Is this thing useful?
I'll let you decide. Bar Balance acts somewhat like an X-Ray on bars. The intrabars it analyzes are no secret; one can simply change the chart's resolution to see the same intrabars the indicator uses. What the indicator brings to traders is the precise count of up/down/neutral intrabars and, more importantly, the calculations it derives from them to present the information in a way that can make it easier to use in trading decisions.
How reliable is Bar Balance information?
By the same token that an up bar does not guarantee that more up bars will follow, future price movements cannot be inferred from the mere count of up/down/neutral intrabars. Price movement during any chart bar for which, let's say, 12 intrabars are analyzed, could be due to only one of those intrabars. One can thus easily see how only relying on bar balance information could be very misleading. The rationale behind Bar Balance is that when the information mined for multiple chart bars is aggregated, it can provide insight into the history behind chart bars, and thus some bias as to the strength of movements. An up chart bar where 11/12 intrabars are also up is assumed to be stronger than the same up bar where only 2/12 intrabars are up. This logic is not bulletproof, and sometimes Bar Balance will stray. Also, keep in mind that balance lines do not represent price momentum as RSI would. Bar Balance calculations have no idea where price is. Their perspective, like that of any historian, is very limited, constrained that it is to the narrow universe of up/down/neutral intrabar counts. You will thus see instances where price is moving up while Balance Momentum, for example, is moving down. When Bar Balance performs as intended, this indicates that the rally is weakening, which does necessarily imply that price will reverse. Occasionally, price will merrily continue to advance on weakening strength.
Divergences
Most of the divergence detection methods used here rely on a difference between the bias of a calculation involving a multi-bar average and a given bar's price direction. When using "Bar Balance on Bar" however, only the bar's balance and price movement are used. This is the default mode.
As usual, divergences are points of interest because they reveal imbalances, which may or may not become turning points. I do not share the overwhelming enthusiasm traders have for the purported ability of bullish/bearish divergences to indicate imminent reversals.
Superfluity
In "The Bed of Procrustes", Nassim Nicholas Taleb writes: To bankrupt a fool, give him information . Bar Balance can display lots of information. While learning to use a new indicator inevitably requires an adaptation period where we put it through its paces and try out all its options, once you have become used to Bar Balance and decide to adopt it, rigorously eliminate the components you don't use and configure the remaining ones so their visual prominence reflects their relative importance in your analysis. I tried to provide flexible options for traders to control this indicator's visuals for that exact reason—not for window dressing.
█ NOTES
For traders
• To avoid misleading traders who don't read script descriptions, the indicator shows nothing in the realtime bar.
• The Data Window shows key values for the indicator.
• All gradients used in this indicator determine their brightness intensities using advances/declines in the signal—not their relative position in a fixed scale.
• Note that because of the way gradients are optimized internally, changing their brightness will sometimes require bringing down the value a few steps before you see an impact.
• Because this indicator does not use volume, it will work on all markets.
For coders
• For those interested in gradients, this script uses an advanced version of the Advance/Decline gradient function from the PineCoders Color Gradient (16 colors) Framework . It allows more precise control over the range, steps and min/max values of the gradients.
• I use the PineCoders Coding Conventions for Pine to write my scripts.
• I used functions modified from the PineCoders MTF Selection Framework for the selection of timeframes.
█ THANKS TO:
— alexgrover who helped me think through the dampening method used to attenuate signal lines on high ratios of neutral intrabars.
— A guy called Kuan who commented on a Backtest Rookies presentation of their Volume Profile indicator . The technique I use to inspect intrabars is derived from Kuan's code.
— theheirophant , my partner in the exploration of the sometimes weird abysses of `security()`’s behavior at intrabar resolutions.
— midtownsk8rguy , my brilliant companion in mining the depths of Pine graphics. He is also the co-author of the PineCoders Color Gradient Frameworks .
FoundryFutures Prior Day Vwap Everyday
🟦 FoundryFutures Prior Day VWAP – "FF-PdVWAP"
Overview
This tool is designed for active intraday futures and equity traders who rely on institutional VWAP reference levels to make tactical decisions around mean reversion, breakout confirmation, and reversal risk zones. It automatically calculates and plots the prior day's VWAP, along with up to three bands of standard deviation, using either Regular Trading Hours (RTH) or Extended Trading Hours (ETH), depending on your preference.
You also have the option to visualize a multi-day composite VWAP, providing a smoothed view of value development across multiple sessions, which is especially helpful during trend days or when analyzing how price interacts with historical value zones.
🔧 Key Features
Daily VWAP Anchoring: Pulls from the prior session’s price-volume relationship and resets each session.
Deviation Bands: Dynamically plots up to 3 bands above and below the VWAP to give context on volatility and range extension.
ETH vs. RTH Session Handling: Easily toggle between full session and pit session calculations.
Multi-Day VWAP (Composite Style): Average VWAP and deviation levels across up to 5 prior sessions.
Custom Styling Controls: Choose your preferred line width, line style (solid, dashed, dotted), and label formatting for better visual hierarchy.
Smart Labels: Annotated VWAP and deviation levels update in real time, with customizable offsets and sizing.
Supports Non-Futures Symbols: Compatible with both futures and equities charts, assuming proper session configuration.
📈 How to Use It
Apply to any chart – Best suited for intraday timeframes (1m–30m) on ES, NQ, SPY, QQQ, etc.
Enable ETH if needed – Toggle the extended hours checkbox to include overnight sessions.
Adjust Deviation Multipliers – Fine-tune the standard deviation bands for your preferred volatility envelope.
Use Labels as Anchors – The on-chart labels clearly mark the key prior VWAP and deviation levels (+1D, -1D, etc.) for quick decision-making.
Multi-Day VWAP – Expand to multiple days for a broader reference point when a single prior session doesn’t capture full market context.
This tool works exceptionally well when used alongside:
TPO or Volume Profiles
High-of-day / Low-of-day levels
Rejection / absorption setups in order flow
VWAP dev band reversion logic
✅ Use Cases
Fade extremes around +2D / -2D bands in balanced sessions
Look for failed breakout re-entries at +1D or -1D
Confirm or reject price acceptance using multi-day VWAP confluence
Determine if price is trading above or below developing value
⚠️ Disclaimer
This indicator is for educational purposes only and should not be interpreted as financial advice. It does not provide buy/sell signals. You are responsible for your own trading decisions. Always test on a demo account or paper trade before using with real capital.
Z-Score Volume with CVD Clustering Script Title:
Z-Score Volume with CVD Clustering & NY VWAP
📘 Description:
This indicator combines statistical volume analysis with order flow confirmation to detect high-probability trade zones and volume-based divergences.
📌 Components:
Z-Score of Volume: Identifies statistically significant volume surges or drops relative to a moving average baseline.
Cumulative Volume Delta (CVD): Gauges net buying vs. selling pressure using high-frequency bid/ask delta.
K-Means Clustering: Applies clustering logic to classify each bar into:
Cluster 2 – Strong Bullish: Z-Score and CVD both strong
Cluster 1 – Divergence / Bull Trap: Z-Score high, but weak CVD
Cluster 0 – Neutral / Noise: No clear alignment
Anchored VWAP (NY Session Open): Confirms market structure and institutional trend bias from 9:30 AM ET forward.
🎯 Suggested Applications:
✅ 1. Trend Continuation Entries (Add-ons):
Look to add to positions when:
Cluster 2 signal occurs
Price is above the NY session VWAP
Price structure has broken out of prior day high/low or range
⚠️ 2. Divergence Detection (Fade Traps):
Cluster 1 signals a bearish divergence (e.g., high volume but weak CVD).
Especially useful when price is failing to stay above VWAP.
Useful for early exits or reversal setups.
📊 3. Volume Profile Confirmation:
Combine with fixed or session-based volume profile tools.
Use Z-Score clusters to confirm volume spikes into low-volume nodes (LVNs) or during imbalance transitions.
📍 4. VWAP Structure Confirmation:
Anchored VWAP acts as a dynamic reference point.
Helps confirm acceptance vs. rejection zones at key institutional levels.
📈 Visuals & Alerts:
Color-coded volume bars show intensity of Z-Score & CVD confluence
CVD Line plots real-time delta bias with green/red coloring
Cluster-based shape markers highlight key bars for actionable signals
Optional: Add alerts for Cluster 2 above VWAP or Cluster 1 below VWAP
⚙️ Customization Options:
Adjustable Z-Score length
Custom anchor timeframe for CVD (e.g., 1D or sessions)
Adjustable max lookback depth
Toggle VWAP inclusion
Extendable to include additional filters: RSI, structure break alerts, etc.
🔧 Ideal Use Cases:
NY session intraday traders (ES, NQ, CL, 6E, FX pairs)
Breakout traders wanting order flow confirmation
Mean reversion traders spotting fake moves
Volume-based scalpers looking for edge on short-term order imbalance
OI BTC Profile# 🚀 Bitcoin Open Interest Profile
## 📊 **What is this indicator?**
The **Bitcoin Open Interest Profile** is an advanced indicator developed in Pine Script v6 that visualizes the distribution of Bitcoin's Open Interest (OI) across different price levels, similar to a Volume Profile but using Open Interest data.
## 🎯 **Key Features**
### **Open Interest Analysis**
- **Dual Mode**: Visualizes both absolute OI value and net changes
- **Data Source**: Uses Open Interest data from BINANCE:BTCUSDT.P-OI
- **Configurable Lookback**: Up to 1000 historical bars for analysis
### **Professional Visualization**
- **Horizontal Profile**: Horizontal bars showing OI concentration by price level
- **Point of Control (POC)**: Automatically identifies the level with highest OI concentration
- **Rolling POC**: Option to display dynamic POC in real-time
### **Advanced Customization**
- **3 Color Schemes**:
- **OI Gradient**: Colors by Open Interest intensity
- **Bull/Bear**: Green for increases, red for decreases
- **Custom**: Customizable color
- **Adjustable Histogram**: Width, position, and orientation configurable
- **Up to 500 levels**: Ultra-high resolution for detailed analysis
## 🔧 **Configurable Parameters**
### **Basic Settings**
- `Lookback`: Number of bars to analyze (1-1000)
- `Row Size`: Profile resolution (1-500 levels)
- `Rolling POC`: Show dynamic POC
- `OI Calculation`: Absolute value or net change
### **Style Settings**
- `Width`: Histogram width (% of range)
- `Bar Width`: Bar thickness
- `Flip Histogram`: Invert orientation
- `Color Schemes`: Multiple coloring options
## 📈 **Trading Applications**
### **Support and Resistance Analysis**
- Identifies levels with highest concentration of open positions
- POC acts as a magnetic price attractor
### **Liquidity Zone Detection**
- High OI levels may indicate potential liquidation zones
- Useful for identifying stop-loss clusters
### **Sentiment Analysis**
- OI changes reveal accumulation or distribution patterns
- Difference between absolute value and net changes provides context
### **Entry Timing**
- Rolling POC can act as dynamic support/resistance
- Confluence with traditional technical analysis
## 💡 **Competitive Advantages**
### **Optimized Performance**
- Maximum 500 simultaneous lines for smooth operation
- Efficient calculations with native arrays
- Compatible with multiple timeframes
### **Total Flexibility**
- Adaptable to different trading strategies
- Granular configuration for each trader
- Overlay that doesn't interfere with price analysis
### **Institutional Data**
- Access to market-moving metrics
- Information not available in traditional indicators
- Informational advantage over retail traders
## 🚨 **Recommended Use Cases**
### **Scalping and Day Trading**
- Use high resolution (300-500 rows) with short lookback (50-100 bars)
- Rolling POC as intraday reference
### **Swing Trading**
- Medium resolution (100-200 rows) with extended lookback (200-500 bars)
- Focus on high OI levels for targets
### **Positional Analysis**
- Maximum lookback (500-1000 bars) for historical context
- Identification of accumulation/distribution zones
## 🎨 **Visual Examples**
The indicator generates a horizontal profile showing:
- **Longer bars**: Higher Open Interest concentration
- **POC (dotted line)**: Level of maximum interest
- **Color gradient**: OI intensity or bull/bear sentiment
## 🔥 **Why is it unique?**
1. **First of its kind**: Combines volume analysis with derivatives metrics
2. **Institutional precision**: Real-time Open Interest data
3. **Extreme versatility**: Adaptable to any trading style
4. **Optimized performance**: Efficient code for professional use
## 📞 **Feedback and Improvements**
Would you like to see any additional functionality? Any specific parameters for your strategy?
---
*Developed by an experienced trader for experienced traders. Compatible with Pine Script v6 and optimized for Bitcoin, but adaptable to other instruments with available OI data.*
Support & Resistance ZonesAdvanced Support & Resistance Detection Algorithm
This indicator identifies meaningful price levels by analyzing market structure using a proprietary statistical approach. Unlike traditional methods that rely on simple swing highs/lows or moving averages, this system dynamically detects zones where price has shown consistent interaction, revealing true areas of supply and demand.
Core Methodology
Price Data Aggregation
Collects highs and lows over a configurable lookback period.
Normalizes price data to account for volatility, ensuring levels remain relevant across different market conditions.
Statistical Significance Filtering
Rejection of random noise: Eliminates insignificant price fluctuations using adaptive thresholds.
Volume-weighted analysis (implied): Stronger reactions at certain price levels are given higher priority, even if volume data is unavailable.
Dynamic Level Extraction
Density-based S/R Zones: Instead of fixed swing points, the algorithm identifies zones where price has repeatedly consolidated.
Time decay adjustment: Recent price action has more influence, ensuring levels adapt to evolving market structure.
Strength Quantification
Each level is assigned a confidence score based on:
Touch frequency: How often price revisited the zone.
Reaction intensity: The magnitude of bounces/rejections.
Time relevance: Whether the level remains active or has been broken decisively.
Adaptive Level Merging & Pruning
Proximity-based merging: If two levels are too close (within a volatility-adjusted threshold), they combine into one stronger zone.
Decay mechanism: Old, untested levels fade away if price no longer respects them.
Why This Approach Works Better Than Traditional Methods
✅ No subjective drawing required – Levels are generated mathematically, removing human bias.
✅ Self-adjusting sensitivity – Works equally well on slow and fast-moving markets.
✅ Focuses on statistically meaningful zones – Avoids false signals from random noise.
✅ Non-repainting & real-time – Levels only update when new data confirms their validity.
How Traders Can Use These Levels
Support/Resistance Trading: Fade bounces off strong levels or trade breakouts with confirmation.
Confluence with Other Indicators: Combine with RSI, MACD, or volume profiles for higher-probability entries.
Stop Placement: Place stops just beyond key levels to avoid premature exits.
Technical Notes (For Advanced Users)
The algorithm avoids overfitting by dynamically adjusting zones sensitivity based on market conditions.
Unlike fixed pivot points, these levels adapt to trends, making them useful in both ranging and trending markets.
The strength percentage helps filter out weak levels—only trade those with a high score for better accuracy.
Note: Script takes some time to load.
Advanced ORB IndicatorAdvanced ORB (Opening Range Breakout) Indicator
Overview
The Advanced ORB Indicator is a sophisticated trading tool designed to capture high-probability breakout opportunities across multiple markets. By identifying the opening range of a trading session and detecting meaningful breakouts, this indicator helps traders enter trending moves with strong momentum while filtering out false signals.
Core Concept
The Opening Range Breakout strategy is based on the principle that the initial trading range of a session often defines key support and resistance levels. When price breaks convincingly beyond this range with proper confirmation, it frequently indicates the beginning of a directional move that can persist throughout the session.
Key Features
### Intelligent Market Detection
- Automatically identifies market type (US Stocks, Forex, Crypto, EU/Asia Stocks)
- Applies optimal default timings based on market characteristics
- Configurable time zones (Exchange, UTC, Local) for precise session timing
Customizable Session Settings
- Adjustable opening range duration (15-240 minutes)
- Flexible reset periods (Daily, Weekly, Monthly, or Never)
- Custom session start times to match specific market opens or pre-market periods
Advanced Signal Filtering
- Multi-factor confirmation system requiring strong candle bodies, proper wick ratios, and minimum breakout percentages
- Smart cooldown periods preventing clustered signals
- Retracement detection that resets signals after meaningful pullbacks
Quality Control Mechanisms
- Volume threshold filter for stronger conviction entries
- RSI-based filters to avoid overbought/oversold conditions
- Trend alignment validation using EMA and directional analysis
- Consecutive candle confirmation for higher reliability
Visual Clarity
- Clear high/low boundary visualization
- Comprehensive status panel showing current levels, trend status, and filter conditions
- Clean, non-repainting signal triangles at breakout points
Trading Applications
Stocks & ETFs
Perfect for capturing morning momentum after market open, especially effective on US equities where the first 30-60 minutes often set the tone for the day. Excellent for gap fills, trend continuations, and reversal confirmations.
Forex & Futures
Ideal for session-based strategies around London/New York opens, capturing institutional order flow as major players enter the market. Can be configured for H4/H1 longer-term breakouts in 24-hour markets.
Cryptocurrency
Powerful for identifying key breakout levels in volatile crypto markets, with adjustable parameters to filter out noise while catching significant moves. Especially effective during high-volume periods following consolidation.
Strategic Implementation
The indicator excels when used as part of a complete trading system. Consider these approaches:
1. Pure Momentum Strategy: Enter on signal, exit at fixed R:R or end of session
2. Trend Continuation: Only take signals in the direction of the higher timeframe trend
3. Support/Resistance Validation: Combine with key S/R levels for higher probability entries
4. Volume Profile Confirmation: Use in conjunction with volume profile to verify breakout significance
Optimization Tips
- Adjust Opening Range Duration based on market volatility (shorter for choppy markets, longer for trending)
- Increase filter requirements during uncertain market conditions
- Loosen filters during strong trending environments
- Use longer durations (120+ minutes) for swing trading setups
- Consider Weekly/Monthly reset periods for positional trading approaches
Performance Notes
The Advanced ORB Indicator is designed to produce fewer, higher-quality signals rather than frequent low-conviction entries. The multiple confirmation requirements mean you'll catch fewer false breakouts at the expense of occasionally later entries.
For best results, combine with proper risk management, position sizing, and an understanding of the broader market context.
*This indicator works on all timeframes but performs optimally on 1-minute to 15-minute charts for intraday trading and 1-hour to 4-hour charts for swing trading opportunities.*
// @version=5
indicator("Advanced ORB Indicator", overlay=true)
// ===================================================================
// SIGNAL REQUIREMENTS DOCUMENTATION
// ===================================================================
//
// BULL SIGNAL REQUIREMENTS:
// - ORB period must be completed (not in the opening range duration anymore)
// - Price must close above the ORB high (if waitForClose is enabled)
// - Candle must have a strong body (body to range ratio >= minBodyToRangeRatio)
// - Valid upper wick (upper wick to body ratio <= wickThreshold)
// - Bullish candle (close > open)
// - Consecutive candle confirmation (if enabled, requires multiple candles meeting criteria)
// - Volume filter (if enabled, volume > average volume * threshold)
// - RSI filter (if enabled, RSI must not be overbought)
// - EMA filter (if enabled, price must be above short EMA)
// - Trend filter (if enabled, must be in an uptrend)
// - Cooldown period satisfied (minimum bars between signals)
// - Not already signaled a bull breakout for this ORB (unless reset by retracement)
//
// BEAR SIGNAL REQUIREMENTS:
// - ORB period must be completed (not in the opening range duration anymore)
// - Price must close below the ORB low (if waitForClose is enabled)
// - Candle must have a strong body (body to range ratio >= minBodyToRangeRatio)
// - Valid lower wick (lower wick to body ratio <= wickThreshold)
// - Bearish candle (close < open)
// - Consecutive candle confirmation (if enabled, requires multiple candles meeting criteria)
// - Volume filter (if enabled, volume > average volume * threshold)
// - RSI filter (if enabled, RSI must not be oversold)
// - EMA filter (if enabled, price must be below short EMA)
// - Trend filter (if enabled, must be in a downtrend)
// - Cooldown period satisfied (minimum bars between signals)
// - Not already signaled a bear breakout for this ORB (unless reset by retracement)
//
// SIGNAL RESET CONDITIONS (for both bull and bear):
// - A significant price retracement happens (determined by retracePercent)
// - Cooldown period expires (minimum bars between signals)
// ===================================================================
// ===================================================================
// SETTINGS GUIDE - DETAILED EXPLANATION
// ===================================================================
//
// MARKET SETTINGS
// ---------------------------------------------------------------------
// Market Type: Select your market or use auto-detection
// - US Stocks: NYSE, NASDAQ, etc. (9:30 AM default open)
// - Forex: Currency pairs (uses midnight or London open)
// - Crypto: Digital currencies (uses midnight UTC)
// - EU Stocks: European exchanges (9:00 AM default)
// - Asia Stocks: Asian exchanges (9:00 AM default)
// - Custom: Manually set your preferred session time
//
// Auto-Detect Market Type: Automatically identifies the market from symbol
// - Enable for convenience when switching between different markets
// - Disable to manually set your preferred market type
//
// Use Market Default Timing: Applies optimal session start times for selected market
// - Enable to use proven default timings for the market
// - Disable to set custom session start times
//
// Time Zone: Sets the reference time zone for session calculations
// - Exchange: Uses the exchange's native time zone (recommended)
// - UTC: Uses Coordinated Universal Time
// - Local: Uses your local computer's time zone
//
// TIME SETTINGS
// ---------------------------------------------------------------------
// Session Start Hour/Minute: Sets when the opening range begins
// - Only active when "Use Market Default Timing" is disabled
// - US Stocks typically use 9:30 AM
// - For pre-market analysis, try 4:00 AM (US) or 8:00 AM (EU)
//
// Opening Range Duration: How long to measure the initial range (minutes)
// - 30-60 mins: Standard for daily ORB strategies
// - 15 mins: More responsive, good for volatile markets
// - 120 mins: More stable, fewer false signals
//
// Reset Period: When to calculate a new opening range
// - Daily: Most common, resets each trading day
// - Weekly: Weekly opening range breakout strategy
// - Monthly: Long-term support/resistance levels
// - Never: Continuous tracking without resetting
//
// SIGNAL QUALITY SETTINGS
// ---------------------------------------------------------------------
// Minimum Bars Between Signals: Prevents clustering of multiple signals
// - Higher values (8-10): Fewer signals, better quality
// - Lower values (3-5): More signals, requires more filtering
//
// Required Retracement % Before New Signal: How far price must pull back
// - Higher values (50-60%): Only signals after significant pullbacks
// - Lower values (20-30%): More signals, may include false breakouts
//
// Minimum Breakout % Required: Strength needed for valid breakout
// - Higher values (0.5-1.0%): Stronger confirmation, fewer false breakouts
// - Lower values (0.1-0.3%): More sensitive, good for low-volatility
//
// Minimum Body to Range Ratio %: Requires strong candles for signals
// - Higher values (70-80%): Only strong momentum candles trigger signals
// - Lower values (40-50%): More signals, includes weaker breakouts
//
// BREAKOUT SETTINGS
// ---------------------------------------------------------------------
// Max Wick to Body Ratio: Controls acceptable candle shape
// - Lower values (0.2-0.3): Only clean breakout candles
// - Higher values (0.5-0.6): More signals, includes wicks
//
// Use Close Price: Uses close instead of High/Low for breakouts
// - Enable for more reliable but delayed confirmation
// - Disable for earlier signals using High/Low prices
//
// Wait for Candle Close: Only signals after candle completes
// - Enable to avoid false breakouts (recommended)
// - Disable for earlier entry but higher risk
//
// FILTER SETTINGS
// ---------------------------------------------------------------------
// Filter Signals Based on Trend: Aligns signals with the overall trend
// - Enable to filter out counter-trend signals (recommended)
// - Disable for range-bound markets or counter-trend strategies
//
// Trend Detection Period: Lookback period for trend calculation
// - Longer periods (50-100): Identifies major trends
// - Shorter periods (20-30): More responsive to recent price action
//
// Trend Strength Threshold: How strong trend must be
// - Higher values (0.7-0.8): Only strong trends generate signals
// - Lower values (0.5-0.6): More signals in choppy markets
//
// Use Volume Filter: Requires above-average volume for signals
// - Enable for stocks and futures (recommended)
// - May disable for some forex pairs with unreliable volume data
//
// Volume Threshold: How much above average volume is required
// - Higher values (2.0-3.0x): Only significant volume spikes
// - Lower values (1.2-1.5x): More signals, less volume confirmation
//
// Use RSI Filter: Prevents signals in overbought/oversold conditions
// - Enable to avoid exhausted moves
// - Disable for strong trend following
//
// Use EMA Alignment Filter: Ensures price is in the right direction
// - Enable for trend confirmation (recommended)
// - Disable for early reversal signals
//
// Require Consecutive Candle Confirmation: Needs multiple confirming candles
// - Enable for higher quality signals
// - Disable for faster but riskier entries
//
// DISPLAY SETTINGS
// ---------------------------------------------------------------------
// Show Label with Values: Displays current ORB levels and status
// Show Range Boundaries: Displays high/low lines on chart
// High/Low Boundary Color: Customize appearance
//
// ===================================================================
// RECOMMENDED SETTINGS BY MARKET TYPE
// ===================================================================
//
// US STOCKS - STANDARD
// ---------------------------------------------------------------------
// - Market Type: US Stocks
// - Opening Range Duration: 30 minutes
// - Reset Period: Daily
// - Wait for Candle Close: Enabled
// - Use Volume Filter: Enabled (Volume Threshold: 1.5-2.0x)
// - Use Trend Filter: Enabled
// - Minimum Breakout %: 0.3-0.5%
//
// US STOCKS - EARNINGS/HIGH VOLATILITY
// ---------------------------------------------------------------------
// - Opening Range Duration: 60 minutes (more stable)
// - Minimum Breakout %: 0.7-1.0% (stronger moves required)
// - Minimum Bars Between Signals: 8-10 (avoid whipsaws)
// - Required Retracement %: 40-50% (deeper pullbacks)
// - Volume Threshold: 2.5-3.0x (higher volume confirmation)
//
// CRYPTO
// ---------------------------------------------------------------------
// - Market Type: Crypto
// - Opening Range Duration: 120 minutes (crypto needs longer)
// - Reset Period: Daily
// - Minimum Breakout %: 1.0-1.5% (higher volatility needs stronger breakouts)
// - Volume Threshold: 2.0-2.5x
// - Consider disabling RSI Filter (trending crypto often stays overbought/oversold)
//
// FOREX - MAJOR PAIRS
// ---------------------------------------------------------------------
// - Market Type: Forex
// - Session Start: Consider 8:00 AM (London open) or 5:00 PM (Asian open)
// - Opening Range Duration: 60-120 minutes
// - Min Body to Range Ratio: 50-60% (forex can have smaller bodies)
// - Consider disabling Volume Filter (unreliable on some platforms)
// - Trend Strength Threshold: 0.6-0.7 (forex tends to trend well)
//
// EU STOCKS
// ---------------------------------------------------------------------
// - Market Type: EU Stocks
// - Opening Range Duration: 60 minutes
// - Reset Period: Daily
// - Use EMA Alignment: Enabled
// - Use Volume Filter: Enabled
//
// SMALL CAP/VOLATILE STOCKS
// ---------------------------------------------------------------------
// - Opening Range Duration: 15-30 minutes (captures early moves)
// - Minimum Breakout %: 1.0-2.0% (needs stronger breakouts)
// - Volume Threshold: 3.0x (needs significant volume)
// - Max Wick to Body Ratio: 0.3 (cleaner breakouts)
// - Use Consecutive Candle Confirmation: Enabled (2-3 candles)
//
// LOW VOLATILITY ENVIRONMENT
// ---------------------------------------------------------------------
// - Opening Range Duration: 30-60 minutes
// - Minimum Breakout %: 0.2-0.3% (lower threshold for tight ranges)
// - Required Retracement %: 20-30% (smaller pullbacks)
// - Consider disabling Consecutive Candle Confirmation
//
// HIGH VOLATILITY ENVIRONMENT
// ---------------------------------------------------------------------
// - Opening Range Duration: 60-120 minutes (more stable)
// - Minimum Breakout %: 0.8-1.5% (stronger confirmation)
// - Required Retracement %: 50-60% (deeper pullbacks)
// - Minimum Bars Between Signals: 8-10 (avoid choppy signals)
// - Use Consecutive Candle Confirmation: Enabled (2-3 candles)
// ===================================================================
Whispr IQ - Trading SystemWhispr IQ - Trading System
This advanced multi-component indicator combines several powerful analysis tools to provide a comprehensive view of market conditions and potential trading opportunities.
Key Components:
Kernel Regression Ribbon
Institutional Order Flow
Volume Profile
Order Blocks
Swing Points and Liquidity
Naked POC (Point of Control)
Fibonacci Levels
Zig Zag Patterns
Divergence Scanner
Squeeze Bands
How It Works:
Kernel Regression Ribbon
Uses kernel regression to create a smoothed ribbon of price action
Multiple timeframes analyzed to show short, medium and long-term trends
Color coding indicates bullish/bearish bias
Institutional Order Flow
Identifies areas of high volume and potential institutional activity
Highlights order blocks, liquidity levels, and fair value gaps
Helps visualize potential support/resistance zones
Volume Profile
Displays volume distribution at different price levels
Identifies high volume nodes and value areas
Useful for determining potential reversal points
Order Blocks
Highlights significant swing highs/lows with high volume
Indicates potential areas where large players may have placed orders
Useful for identifying key support/resistance levels
Swing Points and Liquidity
Marks major swing highs and lows
Highlights areas of potential liquidity buildup
Helps identify trend changes and potential reversal zones
Naked POC
Shows uncovered Points of Control from volume profile analysis
Indicates areas of high trading activity that price has moved away from
Potential magnet for price to return to
Fibonacci Levels
Plots key Fibonacci retracement and extension levels
Useful for identifying potential support, resistance and targets
Multiple Fibonacci sequences used for confirmation
Zig Zag Patterns
Identifies key swing highs and lows
Filters out minor price movements
Helps visualize overall trend structure
Divergence Scanner
Scans for regular and hidden divergences on multiple indicators
Signals potential trend reversals or continuations
Configurable to scan RSI, MACD, CCI and other oscillators
Squeeze Bands
Identifies periods of low volatility (squeezes)
Signals potential for explosive moves when volatility expands
Based on Bollinger Bands and Keltner Channel relationships
The Whispr IQ system combines all these elements to provide a holistic view of market conditions. Traders can use the various signals and overlays to identify high-probability trade setups, key support/resistance levels, trend direction on multiple timeframes, and potential reversals.
This indicator is designed for experienced traders who can interpret the multiple data points and use them in conjunction with their own analysis and risk management. It's a powerful tool that can enhance trading decisions when used properly as part of a complete trading plan.
Liquidity composition / quantifytools- Overview
Liquidity composition divides each candle into sections that are used to display transaction activity at price. In simple terms, an X-ray through candle is formed, revealing the orderflow that built the candle in greater detail. Liquidity composition consists of two main components, lots and columns. Lots and columns can be used to visualize user specified volume types, currently supporting net volume and volume delta. Lots and columns can be used to visualize same or different volume types, allowing a combination of volume footprint, volume delta footprint and volume profile in one single view. Liquidity composition principally works on any chart, whether that is equities, currencies, cryptocurrencies or commodities, even charts with no volume data (in which case volatility is used to approximate transaction activity). The script also works on any timeframe, from minute charts to monthly charts. Orderflow can be observed in real-time as it develops and none of the indications are repainted.
Example: Displaying same volume types on lots and columns
Example: Displaying different volume types on lots and columns
Liquidity composition supports user specified derivative data, such as point of control(s) and net activity coloring. Derivative data can be calculated based on either net volume or volume delta, resulting in different highlights.
With net volume, volume delta and derivative data in one view, key orderflow events such as delta imbalances, high volume nodes, low volume nodes and point of controls can be used to quickly identify accumulation/distribution, imbalances, unfinished/finished auctions and trapped traders.
Accessing script 🔑
See "Author's instructions" section, found at bottom of the script page.
Key takeaways
- Liquidity composition breaks down transaction activity at price, measured in net volume or volume delta
- Developing activity can be observed real-time, none of the indications are repainted
- Transaction activity is calculated using volumes accrued in lower timeframe price movements
- Lots and columns can be used to display same or different volume types (e.g. volume delta lots and net volume columns) in single view
- Users can specify derivative data such as volume delta POCs, net volume POC and net activity coloring
- For practical guide with practical examples, see last section
Disclaimer
Orderflow data is estimated using lower timeframe price movement. While accurate and useful, it's important to note the calculations are estimations and are not based on orderbook data. Estimates are calculated by allotting volume developing on lower timeframe chart to its respective section based on closing price. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Accuracy of the orderflow estimations largely depends on quality of lower timeframe chart used for calculations, which is why this tool cannot be expected to work accurately on illiquid charts with broken data.
Liquidity composition does not provide a standalone trading strategy or financial advice. It also does not substitute knowing how to trade. Example charts and ideas shown for use cases are textbook examples under ideal conditions, not guaranteed to repeat as they are presented. Liquidity composition should be viewed as one tool providing one kind of evidence, to be used in conjunction with other means of analysis.
- Example charts
Chart #1: BTCUSDT
Chart #2: EURUSD
Chart #3: ES futures
- Calculations
By default, size of sections and lower timeframe accuracy are automatically determined for all charts and timeframes. Number of lower timeframe price moves used for calculating orderflow is kept at fixed value, by default set to 350. Accuracy value dictates how many lower timeframe candles are included in the calculation of volume at price. At 350, the script will always use 350 lower timeframe price movements in calculations (when possible). When calculated dynamic timeframe is less than 1 minute, the script switches to available seconds based timeframes. Minimum dynamic timeframe can be capped to 1 minute (as seconds based timeframes are not available for all plans) or dynamic timeframe can be overridden using an user specified timeframe.
Example: Calculating dynamic lower timeframe
Main chart: 4H / 240 minutes
Accuracy value: 100
Formula: 240 minutes / 100 = 2.4 minutes
Timeframe used for calculations = 2 minutes
Section size is automatically determined based on typical historical candle range, the bigger it is, the bigger the section size as well. Like dynamic timeframe, automatic section size can be manually overridden by user specified size expressed in ticks (minimum price unit). Users can also adjust sensitivity of automatic sizing by setting it higher (smaller sections, more detail and more noise) or lower (less sections, less detail and less noise). Section size and dynamic timeframe can be monitored via metric table.
Volume at price is calculated by allotting volume associated with a lower timeframe price movement to its respective section based on closing price (volume is stored to the section that covers closing price). When used on a chart with no volume data, volatility is used instead to determine likely magnitude of participation. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Volumes accrued in sections are monitored over a longer period of time to determine a "normal" amount of activity, which is then used to normalize accrued volumes by benchmarking them against historical values.
Volume values displayed on the left side represent how close or far volume traded at given section is to an extreme, represented by value of 10 . The more value exceeds 10, the more extreme transaction activity is historically. The lesser the value, the less extreme (and therefore more typical) transaction activity is. Users can adjust sensitivity of volume extreme threshold, either by increasing it (more transaction activity is needed to constitute an extreme) or decreasing it (less transaction activity is needed to constitute an extreme).
Example: Interpreting volume scale
0 = Very little to no transaction activity compared to historical values
5 = Transaction activity equal to average historical values
10 = Transaction activity equal to an extreme in historical values
10+ = The more transaction activity exceeds value of 10, the more extreme it is historically
Accuracy of orderflow data largely depends on quality of lower timeframe data used in calculations. Sometimes quality of underlying lower timeframe data is insufficient due to suboptimal accuracy or broken lower timeframe data, usually caused by illiquid charts with gaps and inconsistent values. Therefore, one should always ensure the usage of most liquid chart available with no gaps in lower timeframe data. To combat poor orderflow data, a simple data quality check is conducted by calculating percentage of sections with volume data out of all available sections. Idea behind the test is to capture instances where unusual amount of sections are completely empty, most likely due to data gaps in LTF chart. E.g. 90% of sections hold some volume data, 10% are completely empty = 90% data quality score.
Data quality score should be viewed as a metric alerting when detail of underlying data is insufficient to consider accurate. When data quality score is slightly below threshold, lower timeframe chart used for calculations is likely fine, but accuracy value is too low. In this case, one should increase accuracy value or manually override used timeframe with a smaller one. When data quality score is well below threshold, lower timeframe chart used for calculations is likely broken and cannot be fixed. In this case, one should look for alternative charts with more reliable data (e.g. ES1! -> SPY, BITSTAMP:BTCUSD -> BINANCE:BTCUSDT).
Example : When insufficient data quality scores can/cannot be fixed
- Derivative data
Point of control
Point of control, referring to point in price where transaction activity is highest, can be calculated based on the volume type of lots or columns (based on net volume or volume delta). Depending on the calculation basis, displayed point of controls will vary. POC calculated based on net volume is no different from traditional POC, it is simply the section with highest amount of transaction activity, marked with an X. When calculating POC based on volume delta, the script will highlight two point of controls, named leading and losing point of control . Leading POC refers to lot with highest amount of volume delta, marked with an X. If leading POC was net buy volume, losing POC is marked on section with highest net sell volume, marked with S respectfully. Same logic applies in vice versa, if leading POC is net sell volume, losing POC is marked on highest buy volume section, using the letter B.
Net activity
Similarly to point of control calculation, net activity can be calculated based on either volume types, lots or columns. When calculating net activity based on net volume, candles will be colorized according to magnitude of total volume traded. When calculating net activity based on volume delta, candles will be colorized according to side with most volume traded (buyers or sellers). Net activity color can be applied on borders or body of a candle.
- Visuals
Lots, columns, candles and POCs can be colorized using a fixed color or a volume based dynamic color, with separate color options for buy side volume, sell side volume and net volume.
Metric table can be offsetted horizontally or vertically from any four corners of the chart, allowing space for tables from other scripts.
Table sizes, label sizes and offsets for visuals are fully customizable using settings menu.
- Practical guide
OHLC data (candles) is a simple condensed visualization of an auction market process. Candles show where price was in the beginning of an auction period (timeframe), the highest/lowest point and where price was at the end of an auction. The core utility of Liquidity composition is being able to view the same auction market process in much greater detail, revealing likely intention, effort and magnitude driving the process. All basic orderflow concepts, such as ones presented by auction market theory can be applied to Liquidity composition as well.
The most obvious and easy to spot use case for orderflow tools is identifying trapped traders/absorption, seen in high transaction activity at the very highs/lows of a candle or even better, at wicks. High participation at wicks can be used to identify forced orders absorbed into limit orders, idea behind being that when high transaction activity is placed at a wick, price went one direction with a lot of participation (high effort) and came right back up (low impact) within the same time period.
Absorption can show itself in many ways:
- Extreme buy volume sections at wick highs or buy side POC at wick highs
- Multiple, clustered high buy volume sections (but not extreme) at wick highs
- Positive net volume delta into a reversal down
- Extreme sell volume sections at wick lows or sell side POC at wick lows
- Multiple, clustered high sell volume sections (but not extreme) at wick lows
- Negative net volume delta into a reversal up
- Extreme net volume sections at or net volume POC at wick highs/lows
- Extreme net volume into a reversal up/down
For accurate analysis, orderflow based events should be viewed in the context of price action. To identify absorption, it's best to look for opportunities where an opposing trend is clearly in place, e.g. absorption into highs on an uptrend, absorption into lows on a downtrend. When price is ranging without a clear trend or there's no opposing trend, extreme activity at an extreme end of a candle might be aggressive participants attempting to initiate a new trend, rather than getting absorbed in the same sense. With enough effort put into pushing price to the opposite direction at overextended price, a shift in trend direction might be near.
Price action based levels are a great way to get context around orderflow events. Simple range highs/lows as a single data point serve as a high probability regimes for reversals, making them a great point of confluence for identifying trapped traders.
Low to zero volume sections can be used to identify points in price with little to no trading, leaving a volume null/void behind. Typically sections like these represent gaps on a lower timeframe chart, which can be used as reference levels for targets and support/resistance.
Net volume can be used for same purposes as above, but for determining general intention of market participants it's a much more suitable tool than volume delta. According to auction market theory, low/no participation is considered to reject prices and high participation is considered to accept prices. With this concept in mind, unfinished auctions occur when participation is high at highs or high at lows, idea behind being that participants are showing willingness and interest to trade at higher or lower prices. Auction is considered finished when the opposite is true, i.e. when participants are not showing willingness to trade at higher/lower prices. In general, direction of unfinished auctions can be expected to continue shortly and direction of unfinished auctions can be expected to hold.
While shape of volume delta and net volume are usually similar, they're not the same thing and do not represent the same event under the hood. Volume delta at 0 does not necessarily mean participation is 0, but can also mean high participation with equal amount of buying and selling. With this distinction in mind, using volume delta and net volume in tandem has the benefit of being able to identify points in price with a lot of up and down price movement packed into a small area, i.e. consolidation. Points in price where price hangs around for an extended period of time can be used to identify levels of interest for re-tests and breakout opportunities.
VPLineVPLine is a brand-new line indicator which automatically draws historical POC line with volume profile histograms based on user input session and configurations.
A colossal amount of function is deployed on the indicator: historical POC line, historical VA, historical VA high/low, volume profile histograms, volume profile value text (bid/ask/total), threshold function that limits the extension of the POC line based on user input etc.
Volume CompressorTurns volume into a more informative representation, ready to be further analyzed
...
Rationale
Volume
Back in the "before the quant" days I was a big fan of market & volume profile. Thing is J. Steidlmayer had lotta different ideas & works aside of profiling, it's just most of them ain't got to mainstream, one of them was "Hot / Cold volume" (yes, you can't really google it). From my interpretation, the idea was that in a given asset there is a usual constant volume that stays there no matter what, and if it ever changes it changes very slow and gradually; and there's another kind of, so to say, 'active' volume that actually influences price dynamics and very volatile by its nature. So I've met concept lately, and decided to quantify & model it one day when I'll have an idea how. That day was yesterday.
Compression
When we do music we always use different kinds of filters (low-pass, high pass, etc) for equalization and filtering itself. That stuff we use in finance as well. What we also always use in music are compressors, there dynamic processors that automatically adjust volume so it will be more consistent. Almost all the cool music you hear is compressed (both individual instruments (especially vocals) and the whole track afterwards), otherwise stuff will be too quite and too weak to flex on it, and also DJing it would be a nightmare. I am a big adept of loudness war. So I was like, how can I use compression in finance, when ima get an idea? That day was yesterday as well.
Volume structure
Being inspired by Steidlmayer's idea, I decided to distinguish volume this way:
1) Passive / static volume. The ~ volume that's always there no matter what (hedges, arbitrages, spread legs, portfolio parts etc etc), doesn't affect things;
2) Active / dynamic volume. The volume that flows from one asset to another, really matters and affects things;
3) Excess volume. The last portion of number 2 volume, that doesn't represent any powerful value to affect things.
Now it's clear that we can get rid of number 1 and number 3, the components that don't really matter, and concentrate on number 2 in order to improve information gain, both for ourselves and for the models we feed this data. How?
Model
I don't wanna explain it all in statistical / DSP way for once.
First of all, I think the population of volumes is log-normally distributed, so let's take logs of volumes, now we have a ~ normally distributed data. We take linearly weighted mean, add and subtract linearly weighted standard deviation from it, these would be our thresholds, the borders between different kinds of volumes explained before.
The upper threshold is for downward compression, that will not let volume pass it higher.
The lower threshold is for upward compression, all the volumes lower than this threshold will be brought up to the threshold's level.
Then we apply multipliers to the thresholds in order to adjust em and find the sweet spots. We do it the same way as in sound engineering when we don't aim for overcompression, we adjust the thresholds until they start to touch the signal and all good.
Afterwards, we delete all the number 1 and number 3 volume, leaving us exclusively with the clear main component, ready to be processed further.
We return the volumes to dem real scale.
About the parameters, based on testing I don't recommend changing the thresholds from dem default values, first of all they make sense statistically and second they work as intended.
Window length can and should be adjusted, find your own way, or leave the default value. ML (moving location) length is up to you as well.
So yeah, you can see now we can smooth the data and make it visually appealing not only by applying a smooth filter over it.
All good TV?
VPoC per barThis study prints the current bar VPoC as an horizontal line.
It's aimed originally at BTCUSDT pair and 15m timeframe.
HOW IT WORKS
Zoom In mode: This is the default mode.
The study zooms in into the latest 15 1-minute bar candles in order to calculate the 15 minute candle VPoC.
Zoom Out mode: The VPoC from the last n bars from the current timeframe that match desired timeframe is shown on each bar.
In either case you are recommended to click on the '...' button associated to this study
and select 'Visual Order. Bring to Front.' so that it's properly shown in your chart.
HOW IT WORKS - Zoom In mode
Make sure that '(VP) Zoom into the VP timeframe' setting is set to true.
Choose the zoomed in timeframe where to calculate VPoC from thanks to the '(VP) Zoomed timeframe {1 minute}' setting.
Change '(VP) Zoomed in timeframe bars per current timeframe bar {15}' to its appropiated value. You just need to divide the current timeframe minutes per the zoomed in timeframe minutes per bar. E.g. If you are in 60 minute timeframe and you want to zoom in into 5 minute timeframe: 60 / 5 = 12 . You will write 12 here.
HOW IT WORKS - Zoom Out mode
Make sure that '(VP) Zoom into the VP timeframe' setting is set to false.
If you are using the Zoom out mode you might want to set '(VP) Print VPoC price as discrete lines {True}' to false.
Either choose the zoommed out timeframe where to calculate VPoC from thanks to the '(VP) Zoomed timeframe {1 minute}' setting or turn on the '(VP) Use number of bars (not VP timeframe)' setting in order to use '(VP) Number of bars {100}' as a custom number of bars.
WARNING - Zoom In mode last bar
The way that PineScript handles security function in last bar might result on the last bar not being accurate enough.
SETTINGS
__ SETTINGS - Volume Profile
(VP) Zoomed timeframe {1 minute}: Timeframe in which to zoom in or zoom out to calculate an accurate VPoC for the current timeframe.
(VP) Zoomed in timeframe bars per current timeframe bar {15}: Check 'HOW IT WORKS - Zoom In mode' above. Note : It is only used in 'Zoom in' mode.
(VP) Number of bars {100}: If 'Use number of bars (not VP timeframe)' is turned on this setting is used to calculate session VPoC. Note : It is only used in 'Zoom out' mode.
(VP) Price levels {24}: Price levels for calculating VPoC.
__ SETTINGS - MAIN TURN ON/OFF OPTIONS
(VP) Print VPoC price {True}: Show VPoC price
(VP) Zoom into the VP timeframe: When set to true the VPoC is calculated by zooming into the lower timeframe. When set to false a higher timeframe (or number of bars) is used.
(VP) Realtime Zoom in (Beta): Enable real time zoom for the last bar. It's beta because it would only work with zoomed in timeframe under 60 minutes. And when ratio between zoomout and zoomin is less than 60. Note : It is only used in 'Zoom in' mode.
(VP) Use number of bars (not VP timeframe): Uses 'Number of bars {100}' setting instead of 'Volume Profile timeframe' setting for calculating session VPoC. Note : It is only used in 'Zoom out' mode.
(VP) Print VPoC price as discrete lines {True}: When set to true the VPoC is shown as an small line in the center of each bar. When set to the false the VPoC line is printed as a normal line.
__ SETTINGS - EXTRA
(VP) VPoC color: Change the VPoC color
(VP) VPoC line width {1}: Change VPoC line width (in pixels).
(VP) Use number of bars (not VP timeframe): Uses 'Number of bars {100}' setting instead of 'Volume Profile timeframe' setting for calculating session VPoC. Note : It is only used in 'Zoom out' mode.
(VP) Print VPoC price as discrete lines {True}: When set to true the VPoC is shown as an small line in the center of each bar. When set to the false the VPoC line is printed as a normal line.
CREDITS
I have reused and adapted some code from
"Poor man's volume profile" study
which it's from TradingView IldarAkhmetgaleev user.
Volume+ (RVOL By Time of Day)This script is an enhanced volume indicator.
It calculates relative volume (RVOL) based on the average volume at that time of day (rather than using a moving average).
For example, using this indicator you can see today’s volume during the first 5-minute candle of the market open compared to the previous day’s volume at the market open. Or you can see today’s volume at the market close during the last 15-minute candle compared to the average of the past 20 days of volume at the market close.
Due to the different quantity of candlesticks in a session between Stocks and Forex/Crypto, I separated those markets into separate settings, making this an all-in-one volume indicator that works on all markets.
Settings:
Stocks
If you set the lookback period to 1 on the 5-minute chart and look at the 9:30am candle for a stock, then the current volume bar will show you what today’s volume is compared to yesterday’s 9:30am 5-minute candle.
If you set the lookback period to 15, then the current volume bar will show you what today’s volume is compared to the average of the last 15 days of 9:30am 5-minute candles.
Max Lookback: 64 Sessions
Stocks
This setting is for traders who want to use this indicator on a timeframe lower than the 5-minute chart.
Due to limitations in how many historical bars PineScript can reference, referencing 1-minute and 3-minute bars requires a lot more historical data so I separated the two to allow the 5-minute+ timeframes to have a longer lookback period.
Max Lookback: 12 Sessions
Forex/Crypto
When you set the script to Forex/Crypto, it does the same thing for stocks but calculates based on a 24-hour period.
So if you set the lookback period to 1 on the 1-hour chart and look at the 11:00am candle for a currency pair, then the current volume bar will show you what today’s volume is compared to yesterday’s 11:00am 1-hour candle.
If you set the lookback period to 10, then the current volume bar will show you what today’s volume is compared to the average of the last 10 days of 11:00am 1-hour candles.
Max Lookback: 17 Sessions
What Doesn’t It Work On?
Because I had to manually calculate how many volume candles to look back per timeframe to get the previous session’s candle, I had to hard-code the math in this script.
That means that this indicator will only work on 1m, 3m, 5m, 15m, 30m, 45m, 1h, 2h, 3h, 4h, Daily and Weekly timeframes. If you try to use it on any other timeframe it will revert to a regular volume indicator.
Why Is It Useful?
Similar to volume profile by price, this gives you a volume profile by time in a way that the default volume indicator does not.
For example, you can use this to determine when a stock has a particularly strong opening drive, or when a currency pair has a weak fake-out leading up to the London open, or for general confirmation on trading signals with time-specific volume information to work with.
Colors
The purple line and the faint gray bar is the RVOL value.
The blue number is the percentage of the current volume bar relative to RVOL.
There are four different bar color settings:
Heatmap – Changes color to be brighter based on higher RVOL
Price – Changes color based on price action (like the default TradingView volume indicator)
Traffic – Changes color based on RVOL percentages (for fast visual cues)
Trigger – Changes color only when the specified alert conditions are met
Heatmap:
Traffic:
Trigger:
Price:
Heatmap:
Turns very bright green at 2.0 RVOL
Turns light green at 1.0 RVOL
Turns normal green at 0.75 RVOL
Turns medium green at 0.5 RVOL
Turns very dark green at 0.25 RVOL
Is gray otherwise.
Price:
Turns red if the price action candle closed bearish.
Turns green if the price action candle closed bullish.
Traffic:
Turns red if RVOL is between 1.0 and 1.5.
Turns orange if RVOL is between 1.5 and 2.0.
Turns dark green if RVOL is between 2.0 and 3.0.
Turns bright green if RVOL is above 3.0.
Is gray otherwise.
Trigger:
Turns teal if any of the given alert conditions in the user settings are met.
Alerts
Alerts are optional. You have to set them like any other indicator, by creating a new alert and selecting this indicator.
If you leave the "Alert At RVOL %" setting at 0, then alerts will only be triggered if the current candle exceeds the 1.0 (100%) RVOL level.
If you change the "Alert At RVOL %" setting then alerts will be triggered if the RVOL percentage (blue number) exceeds your given value. The blue number is a percentage of the average, so if it’s at 0.5, then it’s 50% of the average.
Notes
- This indicator only works with regular time bars. It will not work with range, tick, renko etc.
- This script has lookback limitations due to restrictions on how many historical bars PineScript can reference. The lookback limit varies based on the market type you choose. The more bars required for calculation the lower the lookback limit.
- If you use it on the Daily timeframe the lookback period will count as 1 week. If you use it on the Weekly timeframe the lookback period will count as 1 month. So a Lookback of 3 on the Daily would be 3 weeks of averages, a Lookback of 5 on the Weekly would be 5 months of averages (for that Day of Week or Week number).
- Big thanks to @tb12345 for the idea and for helping to field-testing the indicator!
Volume Squeeze Momentum by HypesterTradingview is basically composed by reskins of many great contributors such as Chrismood, Lazybear, RicardoSandos and a few others. Without those guys I would not be able to learn how to code PINE - since the "documentation" is horrible and support is basically also non-existent. So thank you!
So here is another contribution to the community, which I chose to not disclose the code since the community usually reskin the code and do not give credit and this code is 100% mine.
I believe that the volume tools available are poor and lagging so here is my contribution.
I use this tool to filter noise and eliminate fake reversal signals, momentum readings and trend changes on my Spectro M. Use at your own risk.
I've added some pre-set volume profiles and trend configs. Also, the bar colors for ease of use, and all of that can be easily turned on/off and changed in the config menu.
Let me know what you think!